#include <iostream>
#include <unordered_set>
using namespace std;
unordered_set<int> row, col, k1, k2;

int main()
{
    int k = 0, t = 0, x = 0, y = 0;
    cin >> k;
    int flag = 0; // 第一个有攻击的位置
    for(int i = 1; i <= k; ++i)
    {
        cin >> x >> y;
        if(flag != 0) // 找到了，只需让其输入即可
            continue;
        if(row.count(x) || col.count(y)
           || k1.count(x + y) || k2.count(x - y))
        {
            flag = i;
        }
        row.insert(x);
        col.insert(y);
        k1.insert(x + y);
        k2.insert(x - y);
    }
    
    cin >> t;
    while(t--)
    {
        int x = 0;
        cin >> x;
        if(flag != 0 && x >= flag)
            cout << "Yes" << endl;
        else
            cout << "No" << endl;
    }
    return 0;
}